home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / tools / 21help.com / 21H0.TXT < prev    next >
Encoding:
Text File  |  1988-10-04  |  50.9 KB  |  1,197 lines

  1.  
  2.                         INT 21H - CLASSES OF FUNCTIONS 
  3.  
  4. CHARACTER INPUT -                   01H 03H 06H 07H 08H 0AH 0BH 0CH          
  5. CHARACTER OUTPUT -                  02H 04H 05H 06H 09H                      
  6. DIRECTORY OPERATIONS -              39H 3AH 3BH 47H                           
  7. DISK CONTROL -                      0DH 0EH 19H 1BH 1CH 2EH 36H 54H 58H       
  8. DISK TRANSFER AREA ADDRESS -        1AH 2FH                                   
  9. DYNAMIC MEMORY ALLOCATION -         48H 49H 4AH 58H                           
  10. FILE OPERATIONS -                   0FH 10H 11H 12H 13H 16H 17H 23H 3CH 3DH
  11.                                     3EH 41H 43H 45H 46H 4EH 4FH 56H 57H 5AH
  12.                                     5BH                                       
  13. MISCELLANEOUS SYSTEM FUNCTIONS -    25H 26H 29H 30H 33H 35H 38H 44H 4BH
  14.                                     4DH 59H 62H                                
  15. NETWORK FUNCTIONS -                 44H 5EH 5FH                               
  16. PROGRAM TERMINATION -               00H 31H 4CH
  17. RECORD OPERATIONS -                 14H 15H 21H 22H 24H 27H 28H 3FH 40H 42H 5CH
  18. RESERVED (UNDOCUMENTED) FUNCTIONS - 18H 1DH 1EH 1FH 20H 32H 34H 37H           
  19.                                     50H 51H 52H 53H 55H 5DH 60H 61H           
  20. SYSTEM DATE AND TIME -              2AH 2BH 2CH 2DH                           
  21.  
  22. OTHER DOS INTERRUPTS -              20H 24H 25H 26H 27H 28H
  23. COMMON BIOS INTERRUPTS -            10H 11H 12H 13H 14H 16H 17H 1AH            
  24.                                                                              
  25.                                                                              
  26.  USE ARROW KEYS TO SELECT CLASS AND HIT <ENTER>                <ESC> TO EXIT$
  27. 000
  28. 000"000000º
  29. ╙ z
  30. #▄å0000╜00Oéw╠ 00#00º$τ%
  31.  FUNCTION (HEX)                       DESCRIPTION
  32. ---------------  ------------------------------------------------------------$
  33.      01           CHARACTER INPUT WITH ECHO
  34.      03           AUXILIARY INPUT
  35.      06           DIRECT CONSOLE I/O
  36.      07           UNFILTERED CHARACTER INPUT - NO ECHO
  37.      08           CHARACTER INPUT - NO ECHO
  38.      0A           BUFFERED INPUT
  39.      0B           GET INPUT STATUS
  40.      0C           RESET INPUT BUFFER AND GET INPUT
  41.                                                                               
  42.                                                                               
  43.  
  44.  
  45.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  46. 0    00PPPPPPPP¼)-,1∞47T9H=α>
  47.      02           CHARACTER OUTPUT
  48.      04           AUXILIARY OUTPUT
  49.      05           PRINTER OUTPUT
  50.      06           DIRECT CONSOLE I/O
  51.      09           OUTPUT CHARACTER STRING
  52.                                                                                
  53.                                                                                
  54.  
  55.  
  56.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU  <ESC> TO EXIT$
  57. 000PPPPP╩+5.Æ/,1"A
  58.      39           CREATE SUBDIRECTORY
  59.      3A           DELETE SUBDIRECTORY
  60.      3B           SET CURRENT DIRECTORY
  61.      47           GET CURRENT DIRECTORY
  62.                                                                                
  63.                                                                                
  64.  
  65.  
  66.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU  <ESC> TO EXIT$
  67. 000PPPP╨G0K∞NïQ
  68.      0D           DISK RESET
  69.      0E           SET DEFAULT DISK DRIVE
  70.      19           GET DEFAULT DISK DRIVE
  71.      1B           GET ALLOCATION INFORMATION FOR DEFAULT DRIVE
  72.      1C           GET ALLOCATION INFORMATION FOR SPECIFIED DRIVE
  73.      2E           SET VERIFY FLAG
  74.      36           GET FREE DISK SPACE
  75.      54           GET VERIFY FLAG
  76.                                                 
  77.                                                                                
  78.                                                                                
  79.  
  80.  
  81.  USE ARROW KEYS TO SELECT AND HIT <ENTER>  <SPACE>-PRIOR MENU  <ESC> TO EXIT$
  82. 0    00PPPPPPPP█TQVtXπY]╗`·bòee00
  83.      1A           SET DISK TRANSFER ADDRESS
  84.      2F           GET DISK TRANSFER ADDRESS
  85.  
  86.  
  87.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU  <ESC> TO EXIT$
  88. 000PP╜fLi
  89.      48           ALLOCATE MEMORY
  90.      49           RELEASE MEMORY
  91.      4A           MODIFY MEMORY ALLOCATION
  92.      58           GET OR SET ALLOCATION STRATEGY
  93.                                                                               
  94.                                                                                
  95.  
  96.  
  97.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  98. 000PPPPnjvnnqªt
  99.      0F           OPEN FILE -  FCB
  100.      10           CLOSE FILE - FCB
  101.      11           SEARCH FOR FIRST MATCH - FCB
  102.      12           SEARCH FOR NEXT MATCH - FCB
  103.      13           DELETE FILE - FCB
  104.      16           CREATE OR TRUNCATE FILE - FCB
  105.      17           RENAME FILE - FCB
  106.      23           GET FILE SIZE - FCB
  107.      3C           CREATE OR TRUNCATE FILE - ASCIIZ
  108.      3D           OPEN FILE - ASCIIZ
  109.      3E           CLOSE FILE - HANDLE
  110.      41           DELETE FILE - ASCIIZ
  111.      43           GET OR SET FILE ATTRIBUTES - ASCIIZ
  112.      45           DUPLICATE HANDLE - HANDLE
  113.      46           FORCE DUPLICATE OF HANDLE - HANDLE
  114.      4E           SEARCH FOR FIRST MATCH - ASCIIZ
  115.      4F           SEARCH FOR NEXT MATCH - ASCIIZ
  116.      56           RENAME FILE - ASCIIZ
  117.      57           GET OR SET FILE DATE AND TIME - HANDLE
  118.      5A           CREATE TEMPORARY FILE
  119.      5B           CREATE NEW FILE
  120.  
  121.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  122. 000PPPPPPPPPPPPPPPPPPPPPHyí|O~╖ü1äwå█êcî
  123. Åmö·¢₧åá┌ñ/¿≤½ ▓Æ╢╗N┴>╞0
  124.      25           SET INTERRUPT VECTOR
  125.      26           CREATE PROGRAM SEGMENT PREFIX
  126.      29           PARSE FILENAME
  127.      30           GET MS-DOS VERSION NUMBER
  128.      33           GET OR SET CTL-BREAK FLAG
  129.      35           GET INTERRUPT VECTOR
  130.      38           GET OR SET COUNTRY
  131.      44           DEVICE DRIVER CONTROL
  132.      4B           EXECUTE PROGRAM
  133.      4D           GET RETURN CODE
  134.      59           GET EXTENDED ERROR INFORMATION
  135.      62           GET PROGRAM SEGMENT PREFIX ADDRESS
  136.                                      
  137.                                                                                
  138.                                                                              
  139.                                                                               
  140.  
  141.  
  142.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  143. 1
  144. 00PPPPPPPPPPPP¿V1╡╘
  145. ì &
  146. v*%É'b0000
  147.      44           DEVICE DRIVER CONTROL (IOCTL)
  148.      5E           GET MACHINE NAME/PRINTER INFORMATION
  149.      5F           ASSIGN LIST ENTRY
  150.                                                                                
  151.                                                                               
  152.                                                                               
  153.                                                                                
  154.  
  155.  
  156.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  157. 100PPP&
  158. i4\?
  159.      00           PROGRAM TERMINATE
  160.      31           PROGRAM TERMINATE AND STAY RESIDENT
  161.      4C           PROGRAM TERMINATE WITH RETURN CODE
  162.  
  163.  
  164.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  165. 100PPPES┬W╟T
  166.      14           SEQUENTIAL READ - FCB
  167.      15           SEQUENTIAL WRITE - FCB
  168.      21           RANDOM READ - FCB
  169.      22           RANDOM WRITE - FCB
  170.      24           SET RANDOM RECORD NUMBER - FCB
  171.      27           RANDOM BLOCK READ - FCB
  172.      28           RANDOM BLOCK WRITE - FCB
  173.      3F           READ FILE OR DEVICE - HANDLE
  174.      40           WRITE TO FILE OR DEVICE - HANDLE
  175.      42           MOVE FILE POINTER - HANDLE
  176.      5C           RECORD LOCKING - HANDLE
  177.          
  178.                                                                       
  179.                                                                               
  180.                                                                               
  181.  
  182.  
  183.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  184. 1 00PPPPPPPPPPPäZ{]`lcUfhΩk=p\tîxû~00
  185.      18          RESERVED 
  186.      1D          RESERVED 
  187.      1E          RESERVED 
  188.      1F          RESERVED 
  189.      20          RESERVED 
  190.      32          RESERVED 
  191.      34          RESERVED*
  192.      37          RESERVED*
  193.      50          RESERVED*
  194.      51          RESERVED*
  195.      52          RESERVED*
  196.      53          RESERVED 
  197.      55          RESERVED*
  198.      5D          RESERVED 
  199.      60          RESERVED 
  200.      61          RESERVED
  201.  
  202.  
  203.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  204. 100PPPPPPPPPPPPPPPPæÿ╩Ü¥<ƒuí░úΘÑ╓ºù¬∩½l¡#»\▒º│α╡╕
  205.      2A           GET SYSTEM DATE
  206.      2B           SET SYSTEM TIME
  207.      2C           GET SYSTEM TIME
  208.      2D           SET SYSTEM TIME
  209.                                                                               
  210.                                                                               
  211.  
  212.  
  213.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  214. 100PPPP2M┬N*P¥Q
  215.   INT 20H         PROGRAM TERMINATE
  216.   INT 25H         ABSOLUTE DISK READ
  217.   INT 26H         ABSOLUTE DISK WRITE
  218.   INT 27H         TERMINATE AND STAY RESIDENT
  219.   INT 28H         INTERNAL VECTOR  (Undocumented)  
  220.  
  221.  
  222.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  223. 100PPPPPΦà}çUÄ-òR║0
  224.   INT 10H          VIDEO SERVICES - Functions 00H - 08H
  225.   INT 10H          VIDEO SERVICES - Functions 09H - 0EH
  226.   INT 10H          VIDEO SERVICES - Functions 0FH - 1CH
  227.   INT 11H          EQUIPMENT DETERMINATION
  228.   INT 12H          MEMORY SIZE DETERMINATION
  229.   INT 13H          DISK SERVICES
  230.   INT 14H          SERIAL PORT SERVICES
  231.   INT 16H          KEYBOARD SERVICES
  232.   INT 17H          PRINTER SERVICES
  233.   INT 1AH          TIME OF DAY SERVICES
  234.  
  235.  
  236.       
  237.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  238. 2 00PPPPPPPPPP±
  239. l!|%Å&╙54BòHyN
  240. FUNCTION:      00H      PROGRAM TERMINATE 
  241.  
  242. DESCRIPTION:   One of several methods to terminate a program; flushes all file 
  243.                buffers to disk; restores exit addresses; other methods of 
  244.                terminating a program are preferred  
  245.  
  246. CALL:          AH = 0 
  247.                CS = PSP segment 
  248.  
  249. RETURNS:       Nothing 
  250.  
  251. SEE ALSO:      Functions 4CH and 31H$
  252. FUNCTION:      01H      CHARACTER INPUT WITH ECHO 
  253.  
  254. DESCRIPTION:   Waits for a character from the standard input (keyboard) and 
  255.                then echoes it to the standard output (display); can be 
  256.                redirected; recognizes Ctl-C
  257.  
  258. CALL:          AH = 01H 
  259.  
  260. RETURNS:       AL = 8 bit ASCII code for character input
  261.                If AL = 0, it signifies that extended ASCII character input; 
  262.                call function again to get 8 bit scan code
  263.                
  264. SEE ALSO:      Functions 06H, 07H, 3FH and 08H$ 
  265. FUNCTION:      02H      CHARACTER OUTPUT 
  266.  
  267. DESCRIPTION:   Output a character to standard output (display); output can be 
  268.                redirected; recognizes Ctl-C.
  269.  
  270. CALL:          AH = 02H 
  271.                DL = 8 bit ASCII code to be output
  272.  
  273. RETURNS:       Nothing 
  274.  
  275. SEE ALSO:      Function 40H$ 
  276. FUNCTION:      03H      AUXILIARY INPUT
  277.  
  278. DESCRIPTION:   Waits for a character from the standard auxiliary (serial 
  279.                port - COM1); recognizes Ctl-C; can be redirected.
  280.  
  281. CALL:          AH = 3
  282.  
  283. RETURNS:       AL = 8 bit ASCII code input
  284.  
  285. SEE ALSO:      Function 3FH and ROM BIOS INT 14H$
  286. FUNCTION:      04H      AUXILIARY OUTPUT
  287.  
  288. DESCRIPTION:   Output a character to the standard auxiliary (serial port - 
  289.                COM1); recognizes Ctl-C; can be directed.
  290.  
  291. CALL:          AH = 04H
  292.                DL = 8 bit ASCII code of character to be output
  293.  
  294. RETURNS:       Nothing
  295.  
  296. SEE ALSO:      Function 40H and ROM BIOS INT 14H$
  297. FUNCTION:      05H      PRINTER OUTPUT
  298.  
  299. DESCRIPTION:   Sends a character to the standard list device (PRN or LPT1);  
  300.                recognizes Ctl-C; waits until device is ready to accept 
  301.                character; can be redirected. 
  302.  
  303. CALL:          AH = 05H
  304.                DL = 8 bit ASCII code of character to be output
  305.  
  306. RETURNS:       Nothing
  307.  
  308. SEE ALSO:      Function 40H or ROM BIOS INT 17H$
  309. FUNCTION:      06H      DIRECT CONSOLE I/O
  310.  
  311. DESCRIPTION:   Reads a character from the standard input (keyboard) without 
  312.                echoing or outputs one to the standard output (display); does 
  313.                not recognize Ctl-C, Ctl-Break or any other control codes - all 
  314.                are passed on to the calling program.
  315.                 
  316. CALL:          AH = 06H
  317.                DL = function requested
  318.                     0ffh if input requested
  319.                     8 bit ASCII character code if output requested
  320.  
  321. RETURNS:       If output requested, nothing
  322.                If input requested and character received
  323.                         Zero Flag = clear
  324.                                AL = 8 bit ASCII code of character received
  325.                If input requested and character not received
  326.                         Zero Flag = Set$
  327.  
  328. SEE ALSO:      For input - 01H, 07H, 08H, 0AH, 3FH
  329.                For output - 02H, 09H, 40H$
  330. FUNCTION:      07H      UNFILTERED CHARACTER INPUT WITHOUT ECHO
  331.  
  332. DESCRIPTION:   Waits for and reads a character from the standard input 
  333.                (keyboard), does not copy it to standard output (display); can 
  334.                be redirected; does not recognize Ctl-C or Ctl-Break; 
  335.  
  336. CALL:          AH = 07H 
  337.  
  338. RETURNS:       AL = 8 bit ASCII code for character input
  339.                If AL = 0, it signifies that extended ASCII character input; 
  340.                call function again to get 8 bit scan code
  341.                
  342. SEE ALSO:      Function 3FH$
  343. FUNCTION:      08H      CHARACTER INPUT WITHOUT ECHO
  344.  
  345. DESCRIPTION:   Waits for and reads a character from the standard input 
  346.                (keyboard), does not copy it to standard output (display); can 
  347.                be redirected; recognizes Ctl-C and Ctl-Break; 
  348.  
  349. CALL:          AH = 08H 
  350.  
  351. RETURNS:       AL = 8 bit ASCII code for character input
  352.                If AL = 0, it signifies that extended ASCII character input; 
  353.                call function again to get 8 bit scan code
  354.                
  355. SEE ALSO:      Function 01H, 06H, 0AH, 0CH, 3FH$
  356. FUNCTION:      0AH      BUFFERED INPUT
  357.  
  358. DESCRIPTION:   Reads a string of bytes from the standard input (keyboard), 
  359.                including the ending ASCII carriage return, and places them in a 
  360.                user defined buffer; echoes each character to the standard 
  361.                output (display); recognizes Ctl-C and Ctl-Break; can be 
  362.                redirected.  
  363.  
  364. CALL:          AH = 0AH
  365.                DS:DX = Segment:Offset of Buffer
  366.                        First byte of buffer specifies the maximum number 
  367.                        of bytes the buffer can hold (0ffh maximum) and must be 
  368.                        supplied by user; function will only add characters to 
  369.                        the buffer until the next to last position; it will 
  370.                        ignore additional characters until a carriage return is 
  371.                        entered.
  372.  
  373. RETURNS:       Length of the entry is placed, by the function, into the second
  374.                byte of the buffer (DX + 1);$
  375. FUNCTION:      0BH      GET INPUT STATUS
  376.  
  377. DESCRIPTION:   Checks whether a character is available from the standard input 
  378.                (keyboard);can be redirected; recognizes Ctl-C and Ctl-Break
  379.  
  380. CALL:          AH = 0BH
  381.  
  382. RETURNS:       AL = 0      no character available
  383.                   = 0FFH   character available; must be read by a call to the 
  384.                            proper function.$
  385. FUNCTION:      0CH      RESET INPUT BUFFER AND GET INPUT
  386.  
  387. DESCRIPTION:   Clears the standard input (keyboard) buffer and invokes one of 
  388.                the character input functions.
  389.  
  390. CALL:          AH = 0CH
  391.                AL = number of character input function to be invoked after 
  392.                clearing input buffer; must be 01H, 06H, 07H 08H or 0AH.
  393.  
  394.                If AL = 0AH, then
  395.                   DS:DX = Segment:Offset of Buffer
  396.  
  397. RETURNS:       If AL = 0AH, nothing returned
  398.  
  399.                If AL = any other function, AL = 8 bit ASCII code of input$
  400. FUNCTION:      09H      OUTPUT A CHARACTER STRING
  401.  
  402. DESCRIPTION:   Sends a character string to the standard output (display); 
  403.                string must be terminated with a 'dollar sign' (ASCII 24); 
  404.                can be redirected.
  405.  
  406. CALL:          AH = 09H
  407.                DS:DX = Segment:Offset of string to be displayed
  408.  
  409. RETURNS:       Nothing
  410.  
  411. SEE ALSO:      Function 40H$
  412. FUNCTION:      59H  GET EXTENDED ERROR INFORMATION 
  413.  
  414. DESCRIPTION:   Obtains information after unsuccessful INT 21H call 
  415.  
  416. SET:           AH = 50H  
  417.                BX = 0 
  418.  
  419. RETURNS:       AX = extended error code  (0-no error)
  420. 1-invalid function             2-file not found      3-path not found 
  421. 4-too many open files          5-access denied       6-invalid handle 
  422. 7-MCB destroyed                8-insufficient memory 9-invalid MCB 
  423. 0AH-invalid environment      0BH-invalid format      0CH-invalid access code 
  424. 0DH-invalid data             0EH-RESERVED            0FH-invalid drive 
  425. 10H-remove current directory 11H-not same device     12H-no more files 
  426. 13H-write protected          14H-unknown unit        15H-drive not ready 
  427. 16H-unknown command          17H-CRC error           18H-bad request structure  
  428. 19H-seek error               1AH-unknown medium type 1BH-sector not found 
  429. 1CH-printer out of paper     1DH-write fault         1EH-read fault 
  430. 20H-sharing violation        21H-lock violation      22H-disk change invalid 
  431. 23H-FCB unavailable          24-4FH-RESERVED         50H-file already exists 
  432. 51H-RESERVED                 52H-cannot make directory 53H-fail on INT 24H 
  433.                 BH = error class
  434.                 BL = recommended action
  435.                 CH = error locus$
  436. FUNCTION:      39H      CREATE SUBDIRECTORY
  437.  
  438. DESCRIPTION:   Creates a subdirectory using the specified drive and path; 
  439.                specified drive/path string must be in ASCIIZ format; that is, 
  440.                terminated with an ASCII '0'; call will fail if any element of 
  441.                the path does not exist, if a subdirectory of the same name 
  442.                already exists or if the parent directory is the root directory 
  443.                and is full.
  444.               
  445. CALL:          AH = 39H
  446.                DS:DX = Segment:Offset of ASCIIZ path specification
  447.  
  448. RETURNS:       If successful:
  449.                     Carry Flag = Clear
  450.                If unsuccessful:
  451.                     Carry Flag = Set
  452.                     AX = Error Code
  453.                          3   -   if path not found
  454.                          5   -   if access denied$
  455. FUNCTION:      3AH      DELETE SUBDIRECTORY
  456.  
  457. DESCRIPTION:   Removes a subdirectory from the specified drive and path;
  458.                specified drive/path string must be in ASCIIZ format; that is, 
  459.                terminated with an ASCII '0'; call will fail if any element of 
  460.                the path does not exist, if the specified subdirectory is the 
  461.                current directory or if the specified subdirectory still 
  462.                contains files.
  463.  
  464. CALL:          AH = 3AH
  465.                DS:DX = Segment:Offset of ASCIIZ path specification
  466.  
  467. RETURNS:       If successful:
  468.                     Carry Flag = Clear
  469.                If unsuccessful:
  470.                     Carry Flag = Set
  471.                     AX = Error Code
  472.                          3   -   if path not found
  473.                          5   -   if access denied
  474.                          6   -   if current directory
  475.                          16  -   if current directory$
  476. FUNCTION:      3BH      SET CURRENT DIRECTORY
  477.  
  478. DESCRIPTION:   Sets the current or default directory using the specified drive 
  479.                and path; specified drive/path string must be in ASCIIZ format;
  480.                that is, terminated with an ASCII '0'; call will fail if any 
  481.                element of the path does not exist; 
  482.  
  483. CALL:          AH  = 3BH
  484.                DS:DX = Segment:Offset of ASCIIZ path specification
  485.  
  486. RETURNS:       If successful:
  487.                     Carry Flag = Clear
  488.                If unsuccessful:
  489.                     Carry Flag = Set
  490.                     AX = Error Code
  491.                          3   -   if path not found$
  492. FUNCTION:      47H      GET CURRENT DIRECTORY
  493.  
  494. DESCRIPTION:   Returns an ASCIIZ string that specifies the path from the root 
  495.                directory to the current directory, inclusive; returned string 
  496.                does not include the drive or a leading '\'; the call fails if 
  497.                the drive code is invalid.
  498.  
  499. CALL:          AH = 47H
  500.                DL = drive code (0=default, 1=A, etc.)
  501.                DS:SI = Segment:Offset of a 64 byte buffer to hold the returned 
  502.                        string 
  503. RETURNS:       If successful:
  504.                     Carry Flag = Clear
  505.                Buffer contains the complete path as an ASCIIZ string 
  506.  
  507.                If unsuccessful:
  508.                     Carry Flag = Set
  509.                     AX = Error Code
  510.                          0FFH   -   if drive specification invalid$
  511. FUNCTION:      0DH      DISK RESET
  512.  
  513. DESCRIPTION:   Flushes all file buffers; that is, it writes the contents of 
  514.                all file buffers to the appropriate file on the disk; does not 
  515.                update directory entries, so all files must be closed to insure 
  516.                their entries are updated.
  517.  
  518. CALL:          AH = 0DH
  519.  
  520. RETURNS:       Nothing$
  521. FUNCTION:      0EH      SET DEFAULT DISK DRIVE
  522.  
  523. DESCRIPTION:   Sets a specified drive to be the current, or default, disk 
  524.                drive; returns total number of logical (floppy, hard disk 
  525.                partitions, RAM, etc) drives in the system; this call considers 
  526.                logical drive 0 to be the A drive whereas some other functions 
  527.                consider drive 0 to be the current drive.   
  528.  
  529. CALL:          AH =0EH
  530.                DL = drive code (0=A, 1=B, etc.)
  531.  
  532. RETURNS:       AL = number of logical drives$
  533. FUNCTION:      19H      GET DEFAULT DISK DRIVE
  534.  
  535. DESCRIPTION:   Returns the drive code for the current, or default, disk drive;
  536.                this call considers logical drive 0 to be the A drive whereas 
  537.                some other functions consider drive 0 to be the current drive.
  538.  
  539. CALL:          AH = 19H
  540.  
  541. RETURNS:       AL = drive code (0=A, 1=B, etc.)$
  542. FUNCTION:      1BH      GET ALLOCATION INFORMATION FOR DEFAULT DRIVE
  543.  
  544. DESCRIPTION:   Returns selected information about the default drive and a 
  545.                pointer to the identification byte in its File Allocation Table 
  546.                (FAT); can be used to calculate total capacity of the default 
  547.                drive; from the FAT identification byte, it can be determined 
  548.                whether the drive is a floppy or a hard disk. 
  549.  
  550. CALL:          AH = 1BH
  551.  
  552. RETURNS:       AL = number of sectors per cluster on the default drive
  553.                CX = size, in bytes, of each physical sector on the default
  554.                DX = total number of clusters on the default drive
  555.                DS:BX = Segment:Offset of the FAT identification byte
  556.  
  557. SEE ALSO:      Function 1CH 36H$
  558. FUNCTION:      1CH      GET ALLOCATION INFORMATION FOR SPECIFIED DRIVE
  559.  
  560. DESCRIPTION:   Returns selected information about a specified drive and a 
  561.                pointer to the identification byte in its File Allocation Table 
  562.                (FAT); can be used to calculate total capacity of the drive; 
  563.                from the FAT identification byte, it can determined whether 
  564.                the drive is a floppy or a hard disk. 
  565.  
  566. CALL:          AH = 1CH
  567.                DL = drive code (0=default, 1=A, etc.)
  568.  
  569. RETURNS:       If specified drive is valid
  570.                AL = number of sectors per cluster on the drive
  571.                CX = size, in bytes, of each physical sector on the drive
  572.                DX = total number of clusters on the drive
  573.                DS:BX = Segment:Offset of the FAT identification byte
  574.  
  575.                If specified drive is invalid
  576.                      AL = 0FFH
  577.  
  578. SEE ALSO:      Function 1BH 36H$
  579. FUNCTION:      2EH      SET VERIFY FLAG
  580.  
  581. DESCRIPTION:   Programs DOS to automatically verify each disk write; 
  582.                verification entails checking that each written byte can be 
  583.                read, not that it is the same as the source; verification slows 
  584.                down the writing process, so it should be used only for 
  585.                critical data. 
  586.  
  587. CALL:          AH = 2EH
  588.                AL = 00     if toggling verification off
  589.                AL = 01     if toggling verification on
  590.  
  591. RETURNS:       Nothing
  592.  
  593. SEE ALSO:      Function 54H$
  594. FUNCTION:      36H      GET FREE DISK SPACE
  595.  
  596. DESCRIPTION:   Returns selected information about a specified disk drive from 
  597.                which the free space and capacity of the disk can be 
  598.                calculated; supercedes functions 1BH and 1CH. 
  599.  
  600. CALL:          AH = 36H
  601.                DL = drive code (0=default, 1=A, etc.)
  602.  
  603. RETURNS:       If valid drive code
  604.                AX = sectors per cluster
  605.                BX = number of free clusters
  606.                CX = bytes per sector
  607.                DX = total number of clusters on drive
  608.  
  609.                If drive code is invalid
  610.                AX = 0FFFFH
  611.  
  612. SEE ALSO:      Functions 1BH 1CH$
  613. FUNCTION:      54H      GET VERIFY FLAG
  614.  
  615. DESCRIPTION:   Returns the current value of the verify flag.
  616.  
  617. CALL:          AH = 54H
  618.  
  619. RETURNS:       AL = Current value of verify flag
  620.                     00  if verify on
  621.                     01  if verify is off
  622.  
  623. SEE ALSO:      Function 2EH$
  624. FUNCTION:      1AH      SET DISK TRANSFER ADDRESS
  625.  
  626. DESCRIPTION:   Specifies the memory address to be used for disk operations 
  627.                where an FCB is specified; the default DTA is offset 80H within 
  628.                the program segment prefix (PSP);  the memory set aside for the 
  629.                DTA must be sufficiently large to handle the required disk 
  630.                operations;  this function must also be used prior to calling 
  631.                the directory functions 11H, 12H 4EH and 4FH.
  632.                 
  633. CALL:          AH = 1AH
  634.                DS:DX = Segment:Offset of DTA
  635.  
  636. RETURNS:       Nothing
  637.  
  638. SEE ALSO:      Function 2FH$
  639. FUNCTION:      2FH      GET DISK TRANSFER ADDRESS
  640.  
  641. DESCRIPTION:   Returns the address of the current disk transfer area for disk 
  642.                operations using an FCB.
  643.  
  644. CALL:          AH = 2FH
  645.  
  646. RETURNS:       ES:BX = Segment:Offset of current DTA
  647.  
  648. SEE ALSO:      Function 1AH$
  649. FUNCTION:      48H      ALLOCATE MEMORY
  650.  
  651. DESCRIPTION:   Tries to allocate a specified amount of memory and returns a 
  652.                pointer to the beginning of the allocated block (offset 0); 
  653.                if insufficient memory is available, DOS returns the amount 
  654.                available; when a .COM file is loaded all available memory is 
  655.                automatically allocated to it, so any call to this function 
  656.                will fail; 
  657.  
  658. CALL:          AH = 48H
  659.                BX = number of paragraphs (16 bytes) of memory needed
  660.  
  661. RETURNS:       If successful
  662.                         Carry Flag = Clear
  663.                                 AX = segment of allocated block
  664.  
  665.                If unsuccessful
  666.                         Carry Flag = Set
  667.                            AX = Error Code
  668.                                 7     if memory control blocks destroyed
  669.                                 8     if insufficient memory
  670.                            BX = size (paragraphs) of largest block available$
  671. FUNCTION:      49H      RELEASE MEMORY
  672.  
  673. DESCRIPTION:   Release a block of memory previously allocated by function 48H; 
  674.                the function will fail if the specified address does not belong 
  675.                to the program releasing it or if the specified segment was not 
  676.                allocated by function 48H.
  677.  
  678. CALL:          AH = 49H
  679.                ES = segment of block to be released
  680.  
  681. RETURNS:       If successful
  682.                         Carry Flag = Clear
  683.                
  684.                If unsuccessful
  685.                         Carry Flag = Set
  686.                            AX = Error Code
  687.                                 7     if memory control blocks destroyed
  688.                                 9     if incorrect segment in ES$
  689. FUNCTION:      4AH      MODIFY MEMORY ALLOCATION  (SET BLOCK)
  690.  
  691. DESCRIPTION:   Changes the size of a memory block previously allocated by 
  692.                function 48H; most commonly used to reduce the size of a .COM 
  693.                program after loading.
  694.  
  695. CALL:          AH = 4AH
  696.                BX = new block size in paragraphs ( 1 paragraph = 16 bytes)
  697.                ES = segment of block to be modified
  698.  
  699. RETURNS:       If successful
  700.                         Carry Flag = Clear
  701.  
  702.                If unsuccessful
  703.                         Carry Flag = Set
  704.                                 AX = Error Code
  705.                                      7  if memory control block destroyed
  706.                                      8  if insufficient memory
  707.                                      9  if incorrect segment in ES$
  708. FUNCTION:      58H      GET OR SET MEMORY ALLOCATION STRATEGY
  709.  
  710. DESCRIPTION:   Returns or changes the current memory allocation strategy 
  711.                used by DOS; strategies are:  1. First Fit - DOS searches from 
  712.                low addresses to high, allocating first block large enough to 
  713.                satisfy the request (default);  2. Best Fit - searches all 
  714.                memory to find the smallest block that satisfies the request;  
  715.                3. Last Fit - DOS searches from high addresses to low, 
  716.                allocating the first block large enough to satisfy the request.
  717.  
  718. CALL:          If getting strategy code
  719.                   AH = 58H
  720.                   AL = 00
  721.                If setting strategy code
  722.                   AH = 58H
  723.                   AL = 1
  724.                   BX = strategy code
  725.                        00  if first fit, 01  if best fit, 02  if last fit
  726. RETURNS:       If successful
  727.                         Carry Flag = Clear
  728.                If unsuccessful
  729.                         Carry Flag = Set
  730.                                 AX = Error Code
  731.                                      1  invalid function code in AL or BX$
  732. FUNCTION:      0FH      OPEN FILE  -  FCB
  733.  
  734. DESCRIPTION:   Opens a file and makes it available for read/write operations; 
  735.                prior to any actual operations, the FCB must be adjusted to 
  736.                reflect any changes from the default (record size); depending 
  737.                on the type of operation, random or sequential, the proper 
  738.                record field in the FCB must also be set; essentially 
  739.                superceded by function 3DH
  740.  
  741. CALL:          AH = 0FH
  742.                DS:DX = Segment:Offset of unopened FCB
  743.  
  744. RETURNS:       If successful
  745.                         AX = 0
  746.                         FCB filled with specified drive, current block, 
  747.                         record size, file size, date, and time.
  748.  
  749.                If unsuccessful
  750.                         AL = 0FFH
  751.  
  752. SEE ALSO:      Function 3DH$
  753. FUNCTION:      10H      CLOSE FILE  -  FCB
  754.  
  755. DESCRIPTION:   Closes a file and updates the directory entries if its been 
  756.                modified; essentially superceded by function 3EH.
  757.  
  758. CALL:          AH = 10H
  759.                DS:DX = Segment:Offset of corresponding FCB
  760.  
  761. RETURNS:       AL = 0        if directory update successful
  762.                   = 0FFH     if directory entry not found
  763.  
  764. SEE ALSO:      Function 3EH$
  765. FUNCTION:      11H      SEARCH FOR FIRST MATCH  -  FCB
  766.  
  767. DESCRIPTION:   Searches the current directory on the designated disk drive for 
  768.                a matching filename; use function 1AH to set the DTA to a 
  769.                properly sized buffer; use of wild card(s) '?' permitted in 
  770.                filename; an extended FCB must be used to search for files with 
  771.                anything but a normal attribute (system, read only, hidden, 
  772.                etc.); essentially superceded by function 4EH. 
  773.  
  774. CALL:          AH = 11H
  775.                DS:DX = Segment:Offset of corresponding FCB
  776.  
  777. RETURNS:       If successful (match found) 
  778.                         AL = 0
  779.                              Buffer at current DTA set up as unopened FCB
  780.  
  781.                If unsuccessful (no match found)
  782.                         AL = 0FFH
  783.  
  784. SEE ALSO:      Function 4EH$
  785. FUNCTION:      12H      SEARCH FOR NEXT MATCH  -  FCB
  786.  
  787. DESCRIPTION:   After a prior successful call to function 11H or 12H, returns 
  788.                the next matching filename, if any; essentially superceded by 
  789.                function 4FH.
  790.                 
  791. CALL:          AH = 12H
  792.                DS:DX = Segment:Offset of corresponding FCB
  793.  
  794. RETURNS:       If successful (another match found)
  795.                         AL = 0
  796.                              Buffer at current DTA set up as unopened FCB
  797.  
  798.                If unsuccessful (no more matches found)
  799.                         AL = 0FFH
  800.  
  801. SEE ALSO:      Function 4FH$
  802. FUNCTION:      13H      DELETE FILE  -  FCB
  803.  
  804. DESCRIPTION:   Delete all matching files from the current subdirectory; use of 
  805.                wild card(s) '?' permitted in filename; if more than 1 match 
  806.                found, all are deleted; essentially superceded by function 41H. 
  807.  
  808. CALL:          AH = 13H
  809.                DS:DX = Segment:Offset of corresponding FCB
  810.  
  811. RETURNS:       AL = 0      if file(s) deleted
  812.                     0FFH   if no matching files were found or all matching 
  813.                            files were read only.
  814.  
  815. SEE ALSO:      Function 41H$
  816. FUNCTION:      16H      CREATE OR TRUNCATE FILE  -  FCB
  817.  
  818. DESCRIPTION:   Creates a new file in the current subdirectory or truncates an 
  819.                existing file to zero length (all data is lost); no call to 
  820.                open the file is necessary; essentially superceded by function 
  821.                3CH. 
  822.                  
  823. CALL:          AH = 16H
  824.                DS:DX = Segment:Offset of unopened FCB
  825.  
  826. RETURNS:       AL = 0       if file created
  827.                     0FFH    if file not created (directory full or no existing 
  828.                             file)
  829.  
  830. SEE ALSO:      Function 3CH$
  831. FUNCTION:      17H      RENAME FILE  -  FCB
  832.  
  833. DESCRIPTION:   Changes the name of an existing file in the current subdirectory;
  834.                requires the use of a special FCB containing the drive number, 
  835.                current filename and (at offset 11H in the FCB) the new 
  836.                filename; use of wild card(s) '?' permitted in the filenames; if 
  837.                used, the renamed file(s) will maintain the logic governing 
  838.                wild cards; if the new filename matches an existing filename, 
  839.                the function terminates; essentially superceded by function 56H.
  840.  
  841. CALL:          AH = 17H
  842.                DS:DX = Segment:Offset of a special FCB
  843.  
  844. RETURNS:       AL = 0          if file(s) renamed
  845.                     0FFH       if no matching file(s) found or a new filename
  846.                                matches an existing one
  847.  
  848. SEE ALSO:      Function 56H$
  849. FUNCTION:      23H      GET FILE SIZE IN RECORDS  -  FCB
  850.  
  851. DESCRIPTION:   Returns in the FCB the file size, in records, of the specified 
  852.                file; FCB must have the record size filled in before calling 
  853.                this function.
  854.  
  855. CALL:          AH = 23H
  856.                DS:DX = Segment:Offset of unopened FCB
  857.  
  858. RETURNS:       If successful
  859.                         AL = 0
  860.                              FCB's random record field (offset 21H) contains 
  861.                              the number of records in the file, rounded up to reflect 
  862.                              partial records.
  863.  
  864.                If unsuccessful
  865.                         AL = 0FFH$
  866. FUNCTION:      3CH      CREATE OR TRUNCATE FILE  -  ASCIIZ
  867.  
  868. DESCRIPTION:   Given an ASCIIZ filespec, creates a new file in the designated 
  869.                or default subdirectory on the designated or default drive or, 
  870.                if the specified file exists, it is opened, but its length is 
  871.                truncated to zero; returns a 16 bit handle to be used for 
  872.                further file operations; function fails if: 1. Some element of 
  873.                path does not exist.  2.  If the root directory is specified 
  874.                and it is full.  3.  The specified file exists, but has read 
  875.                only attribute. 
  876. CALL:          AH = 3CH
  877.                CX = file attribute    00  if normal 
  878.                                       01 if read only 
  879.                                       02 if hidden 
  880.                                       03 if system
  881.                DS:DX = Segment:Offset of ASCIIZ file specification
  882. RETURNS:       if successful
  883.                   Carry Flag = Clear
  884.                     AX = 16 bit handle
  885.                if unsuccessful
  886.                   Carry Flag = Set
  887.                     AX = error code   3 - if path not found, 
  888.                                       4 - if no handle available
  889.                                       5 - if access denied or directory is full
  890. SEE ALSO:      Function 43H, 5AH, 5BH$
  891. FUNCTION:      3DH      OPEN FILE  -   ASCIIZ
  892.  
  893. DESCRIPTION:   Given an ASCIIZ filespec, creates a new file in the designated 
  894.                or default subdirectory on the designated or default drive; 
  895.                returns a 16 bit handle to be used for further file operations;
  896.                 
  897. CALL:          AH = 3DH
  898.                DS:DX = Segment:Offset of ASCIIZ file specification
  899.                AL = access and (for MS-DOS 3+) file sharing mode
  900.                 (3+)bit 7 = inheritance flag  0 if inherited by child process
  901.                                               1 if for current process only
  902.                 (3+)bits 4-6 = sharing mode  000 if compatability mode
  903.                                              001 if read/write access denied
  904.                                              010 if write access denied
  905.                                              011 if read access denied
  906.                                              100 if full access allowed
  907.                 (3+)bit 3  reserved - should be 0
  908.                     bits 0-2 = access mode   000 if read access
  909.                                              001 if write access
  910.                                              010 if read/write access
  911.  
  912.                
  913.        ANY KEY FOR MORE       <F1> - PRIOR MENU       <ESC> TO EXIT@ 
  914. RETURNS:       if successful
  915.                   Carry Flag = Clear
  916.                     AX = 16 bit handle
  917.                if unsuccessful
  918.                   Carry Flag = Set
  919.                     AX = error code   1 - if invalid function code
  920.                                       2 - if file not found
  921.                                       3 - if path not found, 
  922.                                       4 - if no handle available
  923.                                       5 - if access denied 
  924.                                     0CH - if file access mode invalid
  925.  
  926. SEE ALSO:      Function 43H, 57H$
  927. FUNCTION:      3EH      CLOSE FILE  -  HANDLE
  928.  
  929. DESCRIPTION:   Given a handle corresponding to a file opened by a successful 
  930.                function call (3DH, 3CH, 5AH OR 5BH), flushes all DOS buffers 
  931.                to disk, closes the file, releases the handle and if necessary, 
  932.                updates the file's directory entry.
  933.  
  934. CALL:          AH = 3EH
  935.                BX = handle
  936.  
  937. RETURNS:       if successful
  938.                   Carry Flag = Clear
  939.                if unsuccessful
  940.                   Carry Flag = Set
  941.                           AX = error code 
  942.                                0    if invalid handle or not open$
  943. FUNCTION:      41H      DELETE FILE  -  ASCIIZ
  944.  
  945. DESCRIPTION:   Deletes a file from a specified or default drive and directory.
  946.  
  947. CALL:          AH = 41H
  948.                DS:DX = Segment:Offset of ASCIIZ file specification
  949.  
  950. RETURNS:       if successful
  951.                   Carry Flag = Clear
  952.                if unsuccessful
  953.                   Carry Flag = Set
  954.                           AX = error code 
  955.                                2     if file not found
  956.                                3     if access denied$
  957. FUNCTION:      43H      GET OR SET FILE ATTRIBUTES  -  ASCIIZ
  958.  
  959. DESCRIPTION:   Gets or sets the attributes of a file; cannot change volume 
  960.                label bit or subdirectory bit.
  961.  
  962. CALL:          AH = 43H
  963.                AL = 00H    if get the attribute
  964.                   = 01H    if set the attribute
  965.                CX = new attribute
  966.                     bit 5 - archive bit
  967.                     bit 2 - system bit
  968.                     bit 1 - hidden bit
  969.                     bit 0 - read only bit
  970.                DS:DX = Segment:Offset of ASCIIZ file specification
  971.  
  972. RETURNS:       if successful
  973.                   Carry Flag = Clear
  974.                           CX = attribute if call was to get attribute
  975.                if unsuccessful
  976.                   Carry Flag = Set
  977.                           AX = error code 
  978.                                1     if invalid function code
  979.                                2     if file not found       
  980.                                3     if path not found of file does not exist
  981.                                5     if attribute can't be changed$
  982. FUNCTION:      45H      DUPLICATE HANDLE  -  HANDLE
  983.  
  984. DESCRIPTION:   Given a handle for an open file or device, returns a new handle 
  985.                that refers to the same file or device; file pointer moves 
  986.                using one handle results in a change of the file pointer in the 
  987.                other handle; can be used to redirect standard input (handle 0) 
  988.                or standard output (handle 1).
  989.                
  990.  
  991. CALL:          AH = 45H
  992.                BX = handle
  993.  
  994. RETURNS:       if successful
  995.                   Carry Flag = Clear
  996.                           AX = new file handle
  997.                if unsuccessful
  998.                   Carry Flag = Set
  999.                           AX = error code 
  1000.                                4     if no handle available
  1001.                                6     if handle invalid or not open$
  1002. FUNCTION:      46H      FORCE DUPLICATE OF HANDLE  -  HANDLE
  1003.  
  1004. DESCRIPTION:   Given two file handles, makes the second handle refer to the 
  1005.                same open file at the same location as the first;  if second 
  1006.                handle already refers to an open file, that file is closed; if 
  1007.                file pointer for one handle is changed by a function call, the 
  1008.                file pointer for the other is also changed; can be used to 
  1009.                redirect standard input (handle 0) or standard output (handle 
  1010.                1). 
  1011.  
  1012. CALL:          AH = 46H
  1013.                BX = first handle
  1014.                CX = second handle
  1015.  
  1016. RETURNS:       if successful
  1017.                   Carry Flag = Clear
  1018.                if unsuccessful
  1019.                   Carry Flag = Set
  1020.                           AX = error code 
  1021.                                4     if no handle available
  1022.                                6     if handle invalid or not open$
  1023. FUNCTION:      4EH      SEARCH FOR FIRST MATCH  -  ASCIIZ
  1024.  
  1025. DESCRIPTION:   Given an ASCIIZ file specification, searches the default or 
  1026.                specified directory on the default or specified disk drive for 
  1027.                the first matching file; use function 1AH to set the DTA to a 
  1028.                properly sized buffer; use of wild card(s) '*' and '?' 
  1029.                permitted in filename; if specified attribute is hidden (02H), 
  1030.                system (04H) or directory (10H), all normal files are also 
  1031.                searched.
  1032.  
  1033. CALL:          AH = 4EH
  1034.                CX = attribute to use in search
  1035.                DS:DX = Segment:Offset of ASCIIZ file specification
  1036.  
  1037. RETURNS:       if successful
  1038.                   Carry Flag = Clear
  1039.                   DTA filled in as follows
  1040.                         bytes  0 - 20   reserved
  1041.                         byte  21        attribute of matched file
  1042.                         bytes 22 - 23   file time
  1043.                         bytes 24 - 25   file date
  1044.                         bytes 26 - 27   least significant word of size
  1045.                         bytes 28 - 29   most significant word of size
  1046.                         bytes 30 - 42   filename and extension in ASCIIZ format
  1047.        ANY KEY FOR MORE       <F1> - PRIOR MENU             <ESC> TO EXIT@ 
  1048.                if unsuccessful
  1049.                   Carry Flag = Set
  1050.                           AX = error code 
  1051.                                2     if path invalid
  1052.                               12H    if no matching entry found$
  1053. FUNCTION:      4FH      SEARCH FOR NEXT MATCH  -  ASCIIZ
  1054.  
  1055. DESCRIPTION:   Assuming a successful prior call to function 4EH, finds the 
  1056.                next matching file in default or specified directory on the 
  1057.                default or specified disk drive;  DTA must contain information 
  1058.                from prior call to function 4EH.
  1059.  
  1060. CALL:          AH = 4FH
  1061.  
  1062. RETURNS:       if successful
  1063.                   Carry Flag = Clear
  1064.                   DTA filled in as follows
  1065.                         bytes  0 - 20   reserved
  1066.                         byte  21        attribute of matched file
  1067.                         bytes 22 - 23   file time
  1068.                         bytes 24 - 25   file date
  1069.                         bytes 26 - 27   least significant word of size
  1070.                         bytes 28 - 29   most significant word of size
  1071.                         bytes 30 - 42   filename and extension in ASCIIZ format
  1072.                if unsuccessful
  1073.                   Carry Flag = Set
  1074.                           AX = error code 
  1075.                                2     if path invalid
  1076.                               12H    if no matching entry found$
  1077. FUNCTION:      56H      RENAME FILE  - ASCIIZ
  1078.  
  1079. DESCRIPTION:   Renames a file and/or moves its directory entry to a different 
  1080.                directory on the same disk; wild card characters canot be used 
  1081.                in either filename; call will fail if: 1.  Any element of the 
  1082.                path does not exist.  2.  The drive for the new file 
  1083.                specification is different from the old.  3.  The file is being 
  1084.                moved to the root directory and it if full.  4.  A file already 
  1085.                exists with the new path and filename.
  1086.  
  1087. CALL:          AH = 56H
  1088.                DS:DX = Segment:Offset of current ASCIIZ filename
  1089.                ES:DI = Segment:Offset of new ASCIIZ filename
  1090.  
  1091. RETURNS:       if successful
  1092.                   Carry Flag = Clear
  1093.                if unsuccessful
  1094.                   Carry Flag = Set
  1095.                           AX = error code 
  1096.                                2     if file ot found
  1097.                                3     if path not found or file doesn't exist
  1098.                                5     if access denied
  1099.                              11H     if not the same drive$
  1100. FUNCTION:      57H      GET OR SET FILE DATE AND TIME  -  HANDLE
  1101.  
  1102. DESCRIPTION:   Returns or modifies the date and time stamp in a file's
  1103.                directory entry; the file must have been previously opened by a 
  1104.                successful function  - 3CH, 3DH, 5AH OR 5BH.
  1105.  
  1106. CALL:          if getting date
  1107.                AH = 57H
  1108.                AL = 00
  1109.                BX = handle
  1110.                
  1111.                if setting date
  1112.                AH = 57H
  1113.                AL = 01
  1114.                BX = handle
  1115.                CX = time
  1116.                     bits  0BH - 0FH = hours (0 through 23)
  1117.                     bits  05H - 0AH = minutes (0 through 59)
  1118.                     bits  00H - 04H = seconds (# of 2 second increments 0 -29)
  1119.                DX = date
  1120.                     bits  09H - 0FH = year (relative to 1980)
  1121.                     bits  05H - 08H = month (0 through 12)
  1122.                     bits  00H - 04H = day of month (0 through 31)
  1123.                
  1124.        ANY KEY FOR MORE        <F1> - PRIOR MENU            <ESC> TO EXIT@ 
  1125.                
  1126.  
  1127.  
  1128. RETURNS:       if successful
  1129.                         Carry Flag = Clear
  1130.                         if getting time and date
  1131.                                 CX = time (same bit map as above)
  1132.                                 DX = date (same bit map as above)
  1133.                if unsuccessful
  1134.                         Carry Flag = Set
  1135.                                 AX = error code
  1136.                                      1   if invalid function code
  1137.                                      6   if invalid handle$
  1138. FUNCTION:      5AH      CREATE TEMPORARY FILE
  1139.  
  1140. DESCRIPTION:   Creates and opens a temporary file with a unique name in a 
  1141.                specified directory on the current or specified disk drive; 
  1142.                returns the complete file specification of file; file must be 
  1143.                deleted by coding in the calling program; function will fail if 
  1144.                any element of path does not exist or if file specified path is 
  1145.                the root directory, and it is full.
  1146.  
  1147. CALL:          AH = 5AH
  1148.                CX = attribute
  1149.                     00H   normal
  1150.                     01H   read only
  1151.                     02H   hidden
  1152.                     04H   system
  1153.                DS:DX = Segment:Offset of ASCIIZ path specification
  1154.  
  1155.  
  1156.        ANY KEY FOR MORE        <F1> - PRIOR MENU            <ESC> TO EXIT@ 
  1157. RETURNS:       if successful
  1158.                   Carry Flag = Clear
  1159.                     DS:DX = Segment:Offset of complete ASCIIZ file specification
  1160.                if unsuccessful
  1161.                   Carry Flag = Set
  1162.                           AX = error code
  1163.                                3   if path not found
  1164.                                5   if access denied
  1165.                
  1166. SEE ALSO:      Function 3CH and 5BH$
  1167. FUNCTION:      5BH      CREATE NEW FILE
  1168.  
  1169. DESCRIPTION:   Given an ASCIIZ filespec, creates a new file in the designated 
  1170.                or default subdirectory on the designated or default drive; 
  1171.                returns a 16 bit handle to be used for further file operations; 
  1172.                function fails if: 1. Some element of path does not exist.  2.  
  1173.                If the root directory is specified and it is full.  3.  The 
  1174.                specified file already exists in the specified directory.
  1175.  
  1176. CALL:          AH = 5BH
  1177.                CX = attribute
  1178.                     00H   normal
  1179.                     01H   read only
  1180.                     02H   hidden
  1181.                     04H   system
  1182.                DS:DX = Segment:Offset of complete ASCIIZ file specification
  1183.  
  1184. RETURNS:       if successful
  1185.                   Carry Flag = Clear
  1186.  
  1187.  
  1188.        ANY KEY FOR MORE       <F1> - PRIOR MENU             <ESC> TO EXIT@ 
  1189.                if unsuccessful
  1190.                   Carry Flag = Set
  1191.                           AX = error code
  1192.                                3   if path not found
  1193.                                4   if no handle available
  1194.                                5   if access denied
  1195.                              50H   if file already exists
  1196.                
  1197. SEE ALSO:      Function 3CH and 5AH$
  1198.  
  1199.  
  1200.  
  1201.                
  1202.  
  1203.